yaboot refuses to load segments at file offset 0, so move the ELF headers out
of our text segment. Also hardcode the link address in the linker script, and
remove the now-inaccurate start/end comments.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
--HG--
extra : transplant_source : %A4%1B%8C%D0%1A%D2%87%D6%0A%5EY%CC%FF%A2%3B%5D%D8%83z%F8
cmdline.o: cmdline.dep
cmdline.o: CFLAGS += -DCMDLINE="\"$(FULL_CMDLINE)\""
-TARGET_OPTS = $(OMAGIC) -Wl,-Ttext,0x400000,-T,xen.lds
+TARGET_OPTS = $(OMAGIC) -Wl,-T,xen.lds
TARGET_OPTS += start.o $(ALL_OBJS)
.xen-syms: start.o $(ALL_OBJS) xen.lds
__DYNAMIC = 0; */
PHDRS
{
- text PT_LOAD FILEHDR PHDRS;
+ text PT_LOAD;
}
SECTIONS
{
+ . = 0x00400000;
/* Read-only sections, merged into text segment: */
- PROVIDE (__executable_start = 0x10000000); . = 0x10000000 + SIZEOF_HEADERS;
.interp : { *(.interp) } :text
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
SORT(CONSTRUCTORS)
}
- /* Xen addition */
-
. = ALIGN(32);
__setup_start = .;
.setup.init : { *(.setup.init) }
. = ALIGN(STACK_SIZE);
__per_cpu_end = .;
- /* end Xen addition */
-
.data1 : { *(.data1) }
.tdata : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
.tbss : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }